package main

import "fmt"

//汉诺塔问题
//当有一个盘子的时候  移动1次
//两个盘子的时候 移动3次
//三个盘子的时候 移动次数为7
//四个盘子的时候 移动15次
//n个盘子  2的n次方-1

var total = 0

func main() {
	n := 4
	a := "a"
	b := "b"
	c := "c"
	tower(n, a, b, c)
}

// n个盘子，从a杆，借助b杆移动到c杆
func tower(n int, a, b, c string) {
	if n == 1 {
		total = total + 1
		fmt.Println(a, ">>", c)
		return
	}
	tower(n-1, a, c, b)
	total = total + 1
	fmt.Println(a, ">>", c)
	tower(n-1, b, a, c)
}
